---
title: "RESULTADO MENSAL"
output:
flexdashboard::flex_dashboard:
orientation: rows
#vertical_layout: fill
vertical_layout: scroll
logo: pp.png
social: [ "twitter", "facebook","google +", "linkedin", "pinterest" ]
source_code: embed
#runtime: shiny
---
```{r setup, include=FALSE}
#devtools::install_github("jeromefroe/circlepackeR")
#library(devtools)
library(flexdashboard)
library(readxl)
library(tidyr)
library(plotly)
library(ggmap)
library(RColorBrewer)
library(treemap)
library(hrbrthemes)
library(circlepackeR)
library(data.tree)
library(babynames)
library(viridis)
library(dplyr)
library(lubridate)
library(DT)
#library(d3treeR)
library(chorddiag)
library(circlize)
library(igraph)
library(networkD3)
#setwd("M:/14_Comunicação_e_Marketing/33_Equipe/Pedro Longhin/PRINCIPAL/TRABALHOS GERAIS/PLANILHAS_PROJETOS/07.PRODUTOS E INSTITUCIONAL")
#setwd("D:/GoogleG Drive/Trabalho/SICOOB/DASHBOARD")
setwd("C:/Users/pedro.silva/Desktop/R LOCAL/01.PRODUTOS MENSAL")
#função criada para computar quantos dias tem o mês
numberOfDays <- function(date) {
m <- format(date, format="%m")
while (format(date, format="%m") == m) {
date <- date + 1
}
return(as.integer(format(date - 1, format="%d")))
}
#maindata$`DATA DE SOLICITAÇÃO`=ymd(maindata$`DATA DE SOLICITAÇÃO`)
#maindata$`DATA DE ENTREGA`=ymd(maindata$`DATA DE ENTREGA`)
produtos <- read_excel("C:/Users/pedro.silva/OneDrive - Sicoob/PAUTA_MARKETING/PRODUTOS/PROJETOS_PRODUTOS.xlsm", sheet = 1)
institucional <- read_excel("C:/Users/pedro.silva/OneDrive - Sicoob/PAUTA_MARKETING/INSTITUCIONAL/PROJETOS_INSTITUCIONAL.xlsm", sheet = 1)
maindata=merge(produtos, institucional, all=T)
maindata$`DATA DE ENTREGA`=as.Date(maindata$`DATA DE ENTREGA`, origin = "1899-12-30")
maindata=maindata %>% filter(!`DATA DE ENTREGA`% filter(`DATA DE ENTREGA`>=(as.Date(cut(Sys.Date(), "month")) %m-% months(1)) & `DATA DE ENTREGA`<(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1)))))
produtos=maindata %>% filter(NUCLEO=="PRODUTOS") %>% filter(`DATA DE ENTREGA`>=(as.Date(cut(Sys.Date(), "month")) %m-% months(1)) & `DATA DE ENTREGA`<(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1)))))
institucional=maindata %>% filter(NUCLEO=="INSTITUCIONAL") %>% filter(`DATA DE ENTREGA`>=(as.Date(cut(Sys.Date(), "month")) %m-% months(1)) & `DATA DE ENTREGA`<(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1)))))
#comando para adicionar o mês anterior
#(as.Date(cut(Sys.Date(), "month")) %m-% months(1))
#comando + função numberOfDays para identificar o ultimo dia do mês passado
#(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1))) - 1)
#setwd("M:/14_Comunicação_e_Marketing/33_Equipe/Pedro Longhin/PRINCIPAL/ANALISE DE DADOS/FONTE_GLPI_TAREFAS")
glpi_2020=read_excel("glpi.xlsx")
```
Peças e Serviços {data-navmenu="Produtos"}
=====================================
Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```
### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```
### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```
### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```
### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```
Row
-------------------------------------
### Produção por colaborador
```{r}
proporcaoprodutos=data.frame(table(produtos$`TÉCNICO RESPONSÁVEL`))
names(proporcaoprodutos)=c("Funcionário", "Quantidade")
# Create Data
data <- data.frame(
group=proporcaoprodutos$Funcionário,
value=proporcaoprodutos$Quantidade
)
plot_ly(data, labels = ~group, values = ~value, type = 'pie') %>%
layout(xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
```
### Tipos de peças por colaborador
```{r}
teste1=t(table(produtos$`TÉCNICO RESPONSÁVEL`,produtos$PEÇA))
teste2=data.frame(teste1)
names(teste2)=c("peca", "grupo1", "value")
teste2=teste2 %>% filter(value != 0)
teste2$pathString <- paste("world", teste2$grupo1 , teste2$peca, sep = "/")
population <- as.Node(teste2)
circlepackeR(population, size = "value")
```
### 10 tipos de peças mais produzidas
```{r}
pecas_acumuladas=data.frame(table(produtos$PEÇA))
plot_ly(pecas_acumuladas, x = ~reorder(Var1, -Freq), y = ~Freq, type = 'bar', name = 'SF Zoo') %>%
layout(barmode = 'group', xaxis = list(title = "Tipo de peça", range = c(-0.5,9.5)), yaxis = list(title="Quantidade produzida"))
```
Row
----------------------------------
### Produção de peça no mês por colaborador
```{r}
demandas_mes=produtos
teste_pecas=data.frame(table(demandas_mes$`TÉCNICO RESPONSÁVEL`, demandas_mes$`DATA DE ENTREGA`))
names(teste_pecas)=c("Colaborador", "year", "n")
teste_pecas$year=as.Date(teste_pecas$year)
# Plot
p <- teste_pecas %>%
ggplot( aes(x=year, y=n, fill=Colaborador, text=n)) +
geom_area( )+
scale_fill_viridis(discrete = TRUE)+
#theme(legend.position="none") +
theme_ipsum()+
scale_x_date(date_labels = "%e %B")
#theme(legend.position="none")
# Turn it interactive
p <- ggplotly(p, tooltip="text") %>% layout(xaxis = list(title="Dia do mês"), yaxis = list(title="Quantidade de peças"))
p
```
### Serviços prestados
```{r}
proporcaoprodutos=data.frame(table(produtos$CATEGORIA))
names(proporcaoprodutos)=c("Funcionário", "Quantidade")
# Create Data
data <- data.frame(
group=proporcaoprodutos$Funcionário,
value=proporcaoprodutos$Quantidade
)
plot_ly(data, labels = ~group, values = ~value) %>%
add_pie(hole = 0.6) %>%
layout(xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
```
Cooperativas e Histórico de peças {data-navmenu="Produtos"}
=====================================
Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```
### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```
### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```
### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```
### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```
Row
-------------------------------------
### Quantas peças foram feitas pelo time de marketing?
```{r}
proporcaotime = merge(produtos, institucional, all=T) %>% filter(STATUS!="NOVO") %>% filter(NUCLEO %in% c("PRODUTOS","INSTITUCIONAL")) %>% filter(CATEGORIA!="Dúvidas/Envio")
proporcaotime = data.frame(table(proporcaotime$NUCLEO))
names(proporcaotime)=c("Funcionário", "Quantidade")
# Create Data
data <- data.frame(
group=proporcaotime$Funcionário,
value=proporcaotime$Quantidade
)
plot_ly(data, labels = ~group, values = ~value, type = 'pie') %>%
layout(xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
```
### 10 Pontos focais que mais pedem
```{r}
pecas_acumuladas=data.frame(table(produtos$`PONTO FOCAL`))
plot_ly(pecas_acumuladas, x = ~reorder(Var1, -Freq), y = ~Freq, type = 'bar', name = 'SF Zoo') %>%
layout(barmode = 'group', xaxis = list(title = "Ponto focal", range = c(-0.5,9.5)), yaxis = list(title="Quantidade de peças pedidas"))
```
### 10 cooperaivas que mais pedem
```{r}
demandas_cooperativas=data.frame(table(produtos$`COOPERATIVA SOLICITANTE`))
names(demandas_cooperativas)=c("Cooperativa", "Frequência")
demandas_cooperativas=demandas_cooperativas %>% arrange(Frequência)
n=demandas_cooperativas %>% nrow()
if(n>10){
demandas_cooperativas=demandas_cooperativas %>% slice((n-10):n)
}
p <- plot_ly(demandas_cooperativas, x = ~reorder(Cooperativa, -Frequência), y = ~Frequência, type = 'bar', name = 'SF Zoo') %>%
layout(barmode = 'group', xaxis = list(title = "Cooperativas", range = c(-0.5,9.5)))
p
```
Row
----------------------------------
### Produção de peças pelo time de Marketing mensal de julho de 2018 até o presente
```{r}
peca_mes=c(184, 178, 284, 113, 494, 147, 406, 625, 1715, 901, 1009, 570, 652, 632, 537, 457, 390, 246, 563, 352, 535, 520)
data <- seq(as.Date("2018/07/1"), as.Date("2020/04/1"), "month")
dadostemporal=data.frame(peca_mes, data)
names(dadostemporal)=c('Peça', 'Mês')
temporal <- ggplot(data = dadostemporal,
mapping = aes(x = Mês, y = Peça)) +
geom_point() +
geom_line() +
geom_area(fill="#00AE9D", alpha=0.5)+
theme_ipsum()
ggplotly(temporal)
```
### Previsão de produção para 2020
```{r}
peca_mes=c(406, 625, 1715, 901, 1009, 570, 652, 632, 537, 457, 390, 246)
peca_mes_2020=peca_mes+200+rnorm(12, 0, 12)
peca_mes_2020=round(peca_mes_2020,0)
data <- seq(as.Date("2020/01/1"), as.Date("2020/12/1"), "month")
dadostemporal=data.frame(peca_mes_2020, data)
names(dadostemporal)=c('Peça', 'Mês')
temporal <- ggplot(data = dadostemporal,
mapping = aes(x = Mês, y = Peça)) +
geom_point() +
geom_line() +
geom_area(fill="#00AE9D", alpha=0.5)+
theme_ipsum()
ggplotly(temporal)
```
Histórico de prestação de serviços {data-navmenu="Produtos"}
=====================================
Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```
### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```
### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```
### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```
### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```
Row
-----------------------
### Características da equipe de Produtos
```{r}
polar=maindata %>% filter(NUCLEO=="PRODUTOS")
proporcaopolar=data.frame(table(polar$CATEGORIA))
p <- plot_ly(
type = 'scatterpolar',
r = proporcaopolar$Freq,
theta = proporcaopolar$Var1,
fill = 'toself'
) %>%
layout(
polar = list(
radialaxis = list(
visible = T,
range = c(0, max(proporcaopolar[,2]))
)
),
showlegend = F
)
p
```
Interrelação dos chamados {data-navmenu="Produtos"}
=====================================
Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```
### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```
### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```
### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```
### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```
Row
-----------------------
### Origem e destino dos chamados
```{r}
# Create dummy data
glpi <- glpi_2020 %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in% c("Ana Clara Batista dos Santos", "Katia Caldeira Borges", "Kenny Maicon Barcelos Silva", "Samuel Ferreira Lima"), "110 - Marketing Institucional")) %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in% c("João Victor Martins Costa"), "112 - Marketing de Produtos")) %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in% c("Brenda Marilia de Jesus", "Marina Silva Romagnoli - 2015", "Michel Vieira de Paiva"), "111 - Assessoria De Imprensa")) %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in% c("Mônada Swany de Castro Silva Lopes"), "119 - Mídias Digitais - Marketing")) %>% filter(`Atribuído para - Técnico` %in% c("112 - Marketing de Produtos", "110 - Marketing Institucional", "111 - Assessoria De Imprensa", "119 - Mídias Digitais - Marketing") )
m=data.frame(table(glpi$`Atribuído para - Técnico`, glpi$Categoria))
groupColors <- c("#00AE9D", "#7DB61C", "#003641", "#49479D")
matriz <- matrix(m$Freq,
byrow = TRUE,
nrow = length(table(m$Var1)), ncol = length(table(m$Var1)))
colors <- names(table(m$Var1))
dimnames(matriz) <- list(Origem = colors,
Destino = colors)
groupColors <- c("#00AE9D", "#7DB61C", "#003641", "#49479D")
chorddiag(matriz, groupColors = groupColors, groupnamePadding = 20)
```